5. Offloading
In the offloading pattern,
the primary consumer represents an existing onsite application with its
own database; but a subset of its data (or the entire database) is
replicated to a cloud database using SQL Data Sync (or another
mechanism). The offloaded data can then be used by secondary consumers
even if the primary database isn't accessible.
You can implement the offloading pattern in two ways, as shown in Figure 7.
The primary database can be either the local SQL Server database or the
cloud database. For example, a legacy application can use a local SQL
Server database for its core needs. SQL Data Sync is then used to copy
relevant or summary data in a cloud database. Finally, secondary
consumers such as portable devices and PDAs can display live summary
data by connecting to the cloud for their data source.
6. Aggregation
In its simplest
form, the aggregation pattern provides a mechanism to collect data from
multiple data providers into a SQL Azure database. The data providers
can be geographically dispersed and not know about each other, but they
must share a common knowledge of the schema so that, when aggregated,
the data is still meaningful.
The aggregation patterns shown in Figure 8
use the direct connection pattern. You can use an aggregation pattern
to provide a common repository of information, such as demographic
information or global warming metrics collected from different
countries. The key in this pattern is the ability to define a common
schema that can be used by all providers and understood by the
consumers. Because SQL Azure supports XML data types, you can also
store certain columns in XML, which provides a mechanism to store
slightly different information per customer.
7. Mirroring
The mirror pattern, shown in Figure 9,
is a variation of the offloading pattern where the secondary consumer
can be an external entity. In addition, this pattern implies that a
two-way replication topology exists, so that changes in either database
are replicated back to the other database. This pattern allows a shared nothing integration in which neither consumer has the authority to connect to the other consumer directly.